package com.ccys.db.vo.doctor.consultStage;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.List;

/**
 * @Author：XLY
 * @Date：2024/2/27 0027
 */
@Data
public class GetMasterDataVo {

    private String hotline;   //": "+65 6909 6609",

    @JsonProperty("verified_otp_code")
    private String verifiedOtpCode;   //": "5",

    @JsonProperty("gst_reg_no")
    private String gstRegNo;   //": "201610235E",

    @JsonProperty("consultant_fee")
    private BigDecimal consultantFee;   //": 25.0,

    @JsonProperty("time_out_skip_booking")
    private String timeOutSkipBooking;   //": 0.5,

    @JsonProperty("time_out_cancel_booking")
    private String timeOutCancelBooking;   //": 0.1,

    @JsonProperty("pubnub_pubkey")
    private String pubnubPubkey;

    @JsonProperty("pubnub_subkey")
    private String pubnubSubkey;

    @JsonProperty("automated_greeting_tbtc")
    private String automatedGreetingTbtc;


    @JsonProperty("flag_patients")
    private List<BaseVo> flagPatients;

    private List<BaseVo> symptoms;

    @JsonProperty("duration_unit")
    private List<DurationUnitVo> durationUnit;

    @JsonProperty("specialisation_type")
    private List<BaseVo> specialisationType;

    private List<DiagnosisVo> diagnosis;

    @JsonProperty("medication_reactions")
    private List<BaseVo> medicationReactions;

    @JsonProperty("medication_usage_periods")
    private List<BaseVo> medicationUsagePeriods;

    @JsonProperty("company_name_specialisation")
    private List<String> companyNameSpecialisation;

    @JsonProperty("master_company_name")
    private List<String> masterCompanyName;

    @Data
    public static class BaseVo{
        private String ordering;

        private String id;

        private String name;
    }



    @EqualsAndHashCode(callSuper = true)
    @Data
    public static class DurationUnitVo extends BaseVo{

        private Integer value;
    }

    @EqualsAndHashCode(callSuper = true)
    @Data
    public static class DiagnosisVo extends BaseVo{
        private String code;
    }
}
